<!--- Based on where we are, pull the appropriate FusecacheItem object out of the holder struct --->
<cfset variables.oFusecacheItem = variables.oFusecacheRequestManager.getObjectAtDepth() />

<!--- Now, identify if we should attempt to cache this data --->
<cfif (variables.oFusecacheItem.getFoundInSettings())>
	
	<!--- The fuseaction was found in the configuration, so it would like to be cached --->
	<cfif (variables.oFusecacheItem.getFoundInCache() EQ false)>
		
		<!--- There isn't any data in the cache. Let's try and put it in --->
		<!--- Let's make sure the content to cache has been placed where we expect it --->
		<cfif IsDefined("#application.fusecacheAccessPoint.getOutputVariableName()#")>

			<!--- Save to the cache --->
			<cfset variables.oFusecacheItem.saveCacheData(Evaluate(application.fusecacheAccessPoint.getOutputVariableName())) />
			
		</cfif>
	</cfif>
</cfif>

<!--- Remove a "stack" from our nest count --->
<cfset variables.oFusecacheRequestManager.leaveFuse() />

<!--- RESET myFusebox variable if it exists (it may not because it's a change to the core files!) --->
<cfif (IsDefined("variables.myFusebox.fusecache.blnThisFuseactionCached"))>
	<cfset variables.myFusebox.fusecache.blnThisFuseactionCached = false />
</cfif>